$(document).ready(function() {
    /* Search */
    $('.button-search').bind('click', function() {
        url = $('base').attr('href') + 'index.php?route=product/search';
				 
        var filter_name = $('input[name=\'filter_name\']').attr('value')
		
        if (filter_name) {
            url += '&filter_name=' + encodeURIComponent(filter_name);
        }
		
        location = url;
    });
	
    $('#header input[name=\'filter_name\']').keydown(function(e) {
        if (e.keyCode == 13) {
            url = $('base').attr('href') + 'index.php?route=product/search';
			 
            var filter_name = $('input[name=\'filter_name\']').attr('value')
			
            if (filter_name) {
                url += '&filter_name=' + encodeURIComponent(filter_name);
            }
			
            location = url;
        }
    });
	
    /* Ajax Cart */
    $('#cart > .heading a').bind('click', function() {
        $('#cart').addClass('active');
		
        $.ajax({
            url: 'index.php?route=checkout/cart/update',
            dataType: 'json',
            success: function(json) {
                if (json['output']) {
                    $('#cart .content').html(json['output']);
                }
            }
        });			
		
        $('#cart').bind('mouseleave', function() {
            $(this).removeClass('active');
        });
    });
	
    /* Mega Menu */
    $('#menu ul > li > a + div').each(function(index, element) {
        // IE6 & IE7 Fixes
        if ($.browser.msie && ($.browser.version == 7 || $.browser.version == 6)) {
            var category = $(element).find('a');
            var columns = $(element).find('ul').length;
			
            $(element).css('width', (columns * 143) + 'px');
            $(element).find('ul').css('float', 'left');
        }		
		
        var menu = $('#menu').offset();
        var dropdown = $(this).parent().offset();
		
        i = (dropdown.left + $(this).outerWidth()) - (menu.left + $('#menu').outerWidth());
		
        if (i > 0) {
            $(this).css('margin-left', '-' + (i + 5) + 'px');
        }
    });

    // IE6 & IE7 Fixes
    if ($.browser.msie) {
        if ($.browser.version <= 6) {
            $('#column-left + #column-right + #content, #column-left + #content').css('margin-left', '195px');
			
            $('#column-right + #content').css('margin-right', '195px');
		
            $('.box-category ul li a.active + ul').css('display', 'block');	
        }
		
        if ($.browser.version <= 7) {
            $('#menu > ul > li').bind('mouseover', function() {
                $(this).addClass('active');
            });
				
            $('#menu > ul > li').bind('mouseout', function() {
                $(this).removeClass('active');
            });	
        }
    }
	
    $('.success img, .warning img, .attention img, .information img').live('click', function() {
        $(this).parent().fadeOut('slow', function() {
            $(this).remove();
        });
    });	
});

function addToCart(product_id) {
    $.ajax({
        url: 'index.php?route=checkout/cart/update',
        type: 'post',
        data: 'product_id=' + product_id,
        dataType: 'json',
        success: function(json) {
            $('.success, .warning, .attention, .information, .error').remove();
			
            if (json['redirect']) {
                location = json['redirect'];
            }
			
            if (json['error']) {
                if (json['error']['warning']) {
                    $('#notification').html('<div class="warning" style="display: none;">' + json['error']['warning'] + '<img src="catalog/view/theme/default/image/close.png" alt="" class="close" /></div>');
					
                    $('.warning').fadeIn('slow');
					
                    $('html, body').animate({
                        scrollTop: 0
                    }, 'slow');
                }
            }	 
						
            if (json['success']) {
                $('#notification').html('<div class="success" style="display: none;">' + json['success'] + '<img src="catalog/view/theme/default/image/close.png" alt="" class="close" /></div>');
				
                $('.success').fadeIn('slow');
				
                $('#cart_total').html(json['total']);
				
                $('html, body').animate({
                    scrollTop: 0
                }, 'slow'); 
            }	
        }
    });
}

function removeCart(key) {
    $.ajax({
        url: 'index.php?route=checkout/cart/update',
        type: 'post',
        data: 'remove=' + key,
        dataType: 'json',
        success: function(json) {
            $('.success, .warning, .attention, .information').remove();
			
            if (json['output']) {
                $('#cart_total').html(json['total']);
				
                $('#cart .content').html(json['output']);
            }			
        }
    });
}

function removeVoucher(key) {
    $.ajax({
        url: 'index.php?route=checkout/cart/update',
        type: 'post',
        data: 'voucher=' + key,
        dataType: 'json',
        success: function(json) {
            $('.success, .warning, .attention, .information').remove();
			
            if (json['output']) {
                $('#cart_total').html(json['total']);
				
                $('#cart .content').html(json['output']);
            }			
        }
    });
}

function addToWishList(product_id) {
    $.ajax({
        url: 'index.php?route=account/wishlist/update',
        type: 'post',
        data: 'product_id=' + product_id,
        dataType: 'json',
        success: function(json) {
            $('.success, .warning, .attention, .information').remove();
						
            if (json['success']) {
                $('#notification').html('<div class="success" style="display: none;">' + json['success'] + '<img src="catalog/view/theme/default/image/close.png" alt="" class="close" /></div>');
				
                $('.success').fadeIn('slow');
				
                $('#wishlist_total').html(json['total']);
				
                $('html, body').animate({
                    scrollTop: 0
                }, 'slow'); 				
            }	
        }
    });
}

function addToCompare(product_id) { 
    $.ajax({
        url: 'index.php?route=product/compare/update',
        type: 'post',
        data: 'product_id=' + product_id,
        dataType: 'json',
        success: function(json) {
            $('.success, .warning, .attention, .information').remove();
						
            if (json['success']) {
                $('#notification').html('<div class="success" style="display: none;">' + json['success'] + '<img src="catalog/view/theme/default/image/close.png" alt="" class="close" /></div>');
				
                $('.success').fadeIn('slow');
				
                $('#compare_total').html(json['total']);
				
                $('html, body').animate({
                    scrollTop: 0
                }, 'slow'); 
            }	
        }
    });
}
function addToCompareOncat(product_id,type) {
    var htmlvalue='';
    $.ajax({
        url: 'index.php?route=product/compare/update',
        type: 'post',
        data: 'product_id=' + product_id,
        dataType: 'json',
        success: function(json) {
            $('.success, .warning, .attention, .information').remove();
						
            if (json['success']) {
                            
                $('#notification').html('<div class="success" style="display: none;">' + json['success'] + '<img src="catalog/view/theme/default/image/close.png" alt="" class="close" /></div>');
				
                htmlvalue='<div class="close-box" id="Compare_Product_'+product_id+'"><a href="'+json['href']+'">'+json['name']+'</a><span>';
                htmlvalue+=  '<a class="button" onclick="removeToCompare('+product_id+');" >'+json['name']+'</a>';
                htmlvalue+=  '</span></div><div class="clear"></div><div id="AddNewCompare"></div> ';
                $('div#AddNewCompare').replaceWith(htmlvalue);
				     
                       
                $('.success').fadeIn('slow');
                $('#compare_total').html(json['total']);
                $('#NULLPROCOMPARE').html('   ');
                $('html, body').animate({
                    scrollTop: 0
                }, 'slow'); 
            }	
        }
    });
}
function removeToCompare(product_id) { 
    $.ajax({
        url: 'index.php?route=product/compare/removeupdate',
        type: 'post',
        data: 'product_id=' + product_id,
        dataType: 'json',
        success: function(json) {
            $('.success, .warning, .attention, .information').remove();
						
            if (json['success']) {
                $('#notification').html('<div class="success" style="display: none;">' + json['success'] + '<img src="catalog/view/theme/default/image/close.png" alt="" class="close" /></div>');
                 $('.success').fadeIn('slow');
                if(json['total_pro']==0){
                    $('#All_Compare').html(' <p class="paddingB10"></p><div class="paddingB10"><div class="close-box">Compare list is empty !</div></div><p></p><div class="clear"></div>');
                }
                $('#compare_total').html(json['total']);
                $('#Compare_Product_'+ product_id).hide();
                $('html, body').animate({
                    scrollTop: 0
                }, 'slow'); 
            }	
        }
    });
}
function removeallToCompare(product) { 
    $.ajax({
        url: 'index.php?route=product/compare/removeallupdate',
        type: 'post',
        data: 'product=' + product,
        dataType: 'json',
        success: function(json) {
            $('.success, .warning, .attention, .information').remove();
						
            if (json['success']) {
                $('#notification').html('<div class="success" style="display: none;">' + json['success'] + '<img src="catalog/view/theme/default/image/close.png" alt="" class="close" /></div>');
                $('.success').fadeIn('slow');
                $('#All_Compare').html(' <p class="paddingB10"></p><div class="paddingB10"><div class="close-box">Compare list is empty !</div></div><p></p><div class="clear"></div>');
                $('#compare_total').html(json['total']);
                $('html, body').animate({
                    scrollTop: 0
                }, 'slow'); 
            }	
        }
    });
}